import {PluginCommand} from "./PluginCommand";

class SupportDesignCommand extends PluginCommand {

    /**
     * 构造函数
     */
    constructor() {
        super();
    }

    /**
     * 处理鼠标移动事件
     * @param cb 回调参数
     */
    handleMovePick(cb){
        if(this.event){
            this.event.subscribeAssemblyPluginPointerMoveEvent('supportDesign',(e) =>{
                cb(e);
            })
        }
    }

    /**
     * 处理鼠标按下事件
     * @param cb 回调参数
     */
    handleDownPick(cb){
        if(this.event){
            this.event.subscribeAssemblyPluginPointerDownEvent('supportDesign',(e) =>{
                cb(e);
            })
        }
    }

    /**
     * 获取支架库信息-通用
     * @param params  命令参数
     * @param cb 回调参数
     */
    getSupportData(params, cb){
        if (this.toolQuery) {
            this.toolQuery.getSupportData(params).then(data => {
                cb(data);
            })
        }
    }

    /**
     * 支架插入装配
     * @param params 命令参数
     * @param cb 回调参数
     */
    createSupport(params, cb){
        if(this.toolQuery){
            this.toolQuery.createSupportPart(params);
        }
    }
}

const supportDesignCommand = new SupportDesignCommand();
export {supportDesignCommand};
